Tracker/es

En febrero de 2022, el seguimiento de errores de FreeCAD se migró a GitHub Issues. El sistema de seguimiento de errores Mantis que se describe a continuación ahora está en modo de solo lectura.
link=https://mantisbt.org es el marco de seguimiento de errores que utiliza FreeCAD
link=https://mantisbt.org es el marco de seguimiento de errores que utiliza FreeCAD

El FreeCAD BugTracker es el lugar para informar de errores, enviar solicitudes de nuevas funciones, parches o solicitar la fusión de su rama si ha desarrollado algo con Git. El sistema está dividido en Entornos de trabajo, así que sea específico y publique su solicitud en la subsección correspondiente. En caso de duda, déjela en la sección "FreeCAD".


Flujo de trabajo recomendado

Como se muestra en el diagrama de flujo anterior, antes de crear incidencias, consulte siempre los foros y el sistema de seguimiento de errores para comprobar si su problema es conocido. Esto ahorra mucho tiempo y trabajo a los desarrolladores y voluntarios, quienes podrían dedicarlo a mejorar aún más FreeCAD.

Informar de errores

Si cree que ha encontrado un error, puede informar de este siempre y cuando haya seguido nuestras instrucciones paso a paso.

Solicitar funcionalidades

Si quiere que aparezca algo en FreeCAD que aún no está implementado, no es un error, sino una solicitud de función.

  1. 'IMPORTANTE Antes de solicitar una posible función, asegúrese de ser el primero en hacerlo buscando en los foros y en el sistema de seguimiento de errores. Si no encuentra incidencias o discusiones previas, el siguiente paso es:
  2. Iniciar un hilo en el foro para debatir su solicitud de función con la comunidad a través del foro de discusión abierta [1].
  3. Una vez que la comunidad apruebe que se trata de una función válida, puede abrir una incidencia en el sistema de seguimiento de errores (archítela como "solicitud de función" en lugar de "error").

Envío de parches

Si ha programado una corrección de errores, una extensión o cualquier otra cosa que pueda ser de utilidad pública para FreeCAD, envíe su parche como una "Solicitud de Extracción" (Pull Request) en GitHub.

  1. Para una contribución grande, compleja o que modifique el comportamiento, abra un hilo en el foro Subforo de Desarrolladores para anunciar y debatir su parche. Para correcciones de errores menores, esto no es necesario.
  2. Envíe su Solicitud de Extracción (PR) al Repositorio de FreeCAD en GitHub. El mensaje de envío de la PR incluirá una lista de verificación que debe seguir para asegurar que su contribución tenga las mayores probabilidades de ser aceptada rápidamente. Si no ha trabajado con git anteriormente o no está familiarizado con el envío de una PR a GitHub, consulta nuestra introducción a la página wiki de github.
  3. Participe en la discusión, tanto en el foro como en la solicitud de extracción de GitHub, para que su código pueda fusionarse de manera más efectiva.

Solicitando fusión

(Las mismas directrices que en Envío de parches)

Si ha creado una rama de Git con cambios que le gustaría que se integraran al código de FreeCAD, puede solicitar que se revise y se fusione si los desarrolladores de FreeCAD lo aprueban. Para ello, primero debes publicar su rama en un repositorio público de Git (GitHub, GitLab, Bitbucket, SourceForge, etc.) y, a continuación, proporcionar la URL de su rama en su solicitud de fusión.

Trucos y consejos de MantisBT

Marcado de MantisBT

MantisBT (Mantis Bug Tracker) tiene su propio marcado único.

MantisBT BBCode

Además del marcado MantisBT mencionado anteriormente, también es posible usar el formato BBCode. Para obtener una lista completa, consulte la página del plugin BBCode Plus en [2]. Aquí tiene una lista de las etiquetas BBCode compatibles:
[img][/img] - Imágenes
[url][/url] - Enlaces
[email][/email] - Direcciones de correo electrónico
[color=red][/color] - Texto de color
[highlight=yellow][/highlight] - Texto resaltado
[size][/size] - Tamaño de fuente
[list][/list] - Listas
[list=1][/list] - Listas numeradas (el número es el número inicial)
[*] - Elementos de la lista
[b][/b] - Negrita
[u][/u] - Subrayado
[i][/i] - Cursiva
[s][/s] - Tachado
[left][/left] - Alineación a la izquierda
[center][/center] - Centrado
[right][/right] - Alineación a la derecha
[justify][/justify] - Justificar
[hr] - Línea horizontal
[sub][/sub] - Subíndice
[sup][/sup] - Superíndice
[table][/table] - Tabla
[table=1][/table] - Tabla con borde de ancho especificado
[tr][/tr] - Fila de tabla
[td][/td] - Columna de tabla
[code][/code] - Bloque de código
[code=sql][/code] - Bloque de código con definición de lenguaje
[code start=3][/code] - Bloque de código con numeración de línea a partir del número
[quote][/quote] - Cita de *alguien* (sin nombre)
[quote=name][/quote] - Cita de *nombre* />

MantisBT <=> Marcado de GitHub

A continuación se muestran palabras clave especiales del plugin de integración de código fuente de MantisBT que enlazan con el repositorio de GitHub de FreeCAD. Consulte GitHub y MantisBT.

GitHub y MantisBT

El sistema de seguimiento de errores de FreeCAD cuenta con un complemento llamado Source Integration que conecta el repositorio de FreeCAD en GitHub con nuestro sistema de seguimiento MantisBT. Esto facilita el seguimiento y la asociación de las confirmaciones de Git con sus respectivos tickets en MantisBT. El complemento Source Integration analiza los mensajes de confirmación de Git en busca de palabras clave específicas para ejecutar las siguientes acciones:

Nota Las siguientes palabras clave deben agregarse en el mensaje de confirmación de git y no en el asunto de la solicitud de extracción.

Referencia remota a un ticket

Usando este patrón, se asociará automáticamente un commit de Git a un ticket (Nota: esto no cerrará el ticket). El formato que reconoce MantisBT es:

Para quienes tengan curiosidad, aquí está la expresión regular que usa MantisBT para esta operación:
/(?:bugs?|issues?|reports?)+\s*:?\s+(?:#(?:\d+)[,\.\s]*)+/i

Resolución remota de un ticket

Formato que MantisBT reconoce:

Para los curiosos, aquí está la expresión regular que MantisBT usa para esta operación:
/(?:fixe?d?s?|resolved?s?)+\s*:?\s+(?:#(?:\d+)[,\.\s]*)+/i